const express = require('express')
const router = express.Router()
const userDao = require('../database/userDao')
const favoritesDao = require('../database/favoritesDao')

// 用户登录验证
router.post('/getUser', async (req, res) => {
  // 原有代码不变
})

// 获取用户信息（统一使用这个端点）
router.get('/:id', async (req, res) => {
  try {
    const user = await userDao.getUserById(req.params.id);
    if (!user) {
      return res.status(404).json({
        code: 404,
        msg: '用户不存在',
        data: null
      });
    }
    res.json({
      code: 200,
      msg: '获取成功',
      data: [user] // 保持与前端期望的数组格式一致
    });
  } catch (err) {
    res.status(500).json({
      code: 500,
      msg: '服务器错误',
      data: err.message
    });
  }
});

// 获取用户收藏
router.get('/:id/favorites', async (req, res) => {
  try {
    const favorites = await favoritesDao.getByUserId(req.params.id);
    res.json({
      code: 200,
      msg: '获取成功',
      data: favorites
    });
  } catch (err) {
    res.status(500).json({
      code: 500,
      msg: '服务器错误',
      data: err.message
    });
  }
});

// 用户注册
router.put('/addUser', async (req, res) => {
  // 原有代码不变
})
// 根据用户id获取用户信息
router.get('/findUser',async(req,res) => {
  let id = req.query.id
  try{
    let result = await userDao.findUser(id)
    res.send({
      code:200,
      msg:'获取成功',
      data:result
    })
  }catch(err){
    res.send({
      code:400,
      msg:'获取失败',
      data:err
    })
  }
})

module.exports = router